#!/bin/bash

# 获取当前目录
current_dir=$(pwd)
echo "current_dir: ${current_dir}"

# 设置要处理的目录
dir1="${current_dir}/src/assets"
# 获取目录下的所有子目录
list=($(find "$dir1" -type d))

# 处理长图，调整图片大小到最大宽度1920像素
function gen_full_img {
    for dir in "${list[@]}"; do
        echo "Processing directory: ${dir}"
        cd "$dir" || continue
        # 使用ImageMagick调整图片大小，保持宽高比，最大宽度1920像素
        find . -name "*.png" -exec sh -c 'magick "$1" -resize 1920x\> "$1"' sh {} \;
    done
}

# 压缩图片，在保证质量的前提下减小文件大小
function min_img {
    for dir in "${list[@]}"; do
        echo "Processing directory: ${dir}"
        cd "$dir" || continue
        # 使用pngquant压缩PNG图片，质量范围80-100
        find . -name "*.png" -exec pngquant --ext=.png --quality=80-100 --force {} \;
    done
}

# 执行函数
gen_full_img
min_img

echo "Image processing completed."



